home *** CD-ROM | disk | FTP | other *** search
/ BCI NET / BCI NET Dec 94.iso / archives / utilities / cli / bindnames.lha / BindNames / README < prev    next >
Encoding:
Text File  |  1994-08-18  |  6.5 KB  |  181 lines

  1.         BindNames V1.0  by Dave Haynie
  2.         BindNames V2.0  by Dan Barrett, barrett@cs.umass.edu
  3.         BindNames V3.71 by Jan Rembser <JR>,
  4.                          rembser@informatik.uni-frankfurt.de
  5.  
  6.         This documentation file was written by Dave Haynie
  7.         modified by Dan Barrett and Jan Rembser.
  8.         So when you read "I", it means Dave. :-)
  9.  
  10.  
  11.     BindNames is a rather simple hack I [Dave] came up with to solve the
  12. "Assign" problem.  Like most folks with large hard disks containing lots
  13. of different programs, my Startup-Sequence was starting to get full of
  14. Assign statements.  While that alone isn't necessarily enough to make
  15. most go out and write a program, I was starting to think of this as an
  16. inelegance.  Nearly every other new program I installed onto my system
  17. needed a new set of logical names, and so for every new program I ended
  18. up having to edit my Startup-Sequence.  I also had to pay attention to
  19. the ordering of Assignments, since obviously I couldn't base an
  20. assignment on one that hadn't been made yet.  The end result was that
  21. the Startup Sequence was getting rather ugly, with no sign of change on
  22. the immediate horizon. 
  23.  
  24.     Since problems should be solved by those who see them, I came up
  25. with BindNames.  BindNames is designed to do all of the logical name
  26. assignments you need at once.  It looks for any number of files in the
  27. directory "SYS:Names".  The format of such files is something like this
  28. (to quote my "SYS:Names/System" file):
  29.  
  30. BIN:    SYS:bin
  31. OS:    SYS:os
  32. C:     BIN:c
  33. COM:    BIN:Com
  34. L:     OS:L
  35. FONTS:    PATH:FD:Amiga,FD:PD,FD:PS,FD:Terms,FD:CityDesk
  36. FD:    OS:Fonts
  37. S:     OS:s
  38. DEVS:    OS:Devs
  39. LIBS:    OS:Libs
  40. ENV:    RAM:Env
  41. T:    RAM:T
  42.  
  43. rexx:    sys:s,sys:rexx#,adpro:rexx              <JR>
  44.  
  45.     [Note that the strange-looking "FONTS:" directory assign, above,
  46. works only if you are using the commercial product WShell 2.0.]
  47.  
  48.     <JR>[Note the # after sys:rexx means this part will be the first path (not
  49. sys:s) of a multiple assign. So this becomes the part which is shown by
  50. standard 'c:dir <path>'. If in various names-files several paths appear
  51. for the same assign and are marked with a #, the last one found is used as
  52. first path.]
  53.  
  54.     BindNames will read all name files before making any
  55. assignments, and it can figure out dependencies, so it doesn't matter
  56. how you order the names.  It will create directories that it can't find,
  57. such as RAM:Env and RAM:T in the above example, and it will generate
  58. warnings for name assignments that it can't resolve.
  59.  
  60. <JR> [Adding for multiple assigns is now supported.
  61. BindNames V3.71 handles now "formatted" names-files, it means:
  62.  
  63. test:     dh0:bla/foo  ,  dh1:testing/src   
  64.      ^^^^^           ^^ ^^               ^^^
  65.      tabs            spaces              spaces
  66.  
  67. Please don't mix tabs and spaces, tabs only between assign and first path.]
  68.  
  69. It also accepts several options, of the form:
  70.  
  71. BindNames [[V]VERBOSE] [TEST] [NOADD] [DIR <namesdir>] [SYSTEM drive]
  72.  
  73.     The SYSTEM device option causes BindNames to re-assign the SYS:
  74. name to the given device before searching for SYS:Names.  For example,
  75. my main system disk is called FH0:, but I boot from DH2: (sure sounds
  76. like A2090A madness to me too, but what can I say), so my
  77. Startup-Sequence says "BindNames >NIL: SYSTEM fh0:". 
  78.  
  79.     The VERBOSE switch causes BindNames to list each name and
  80. equivalence as it runs.  The TEST switch does the same thing, but doesn't
  81. actually make the name assignments.
  82.  
  83.     <JR> [In VVERBOSE mode BindNames does very extensive output of the
  84. changing tree, during work.
  85.  
  86. Since V2.0 BindNames 
  87.     - doesn't capitalizes all volume names and path names when it does
  88.     the assigns,
  89.     - lets you separate the volume name from the path name (in the name
  90.     files) using  tabs only:  spaces are considered part of the volume/
  91.     path name. BindNames V1.0 was limited in that it could not handle
  92.     volume/path names that contain spaces, like
  93.         
  94.             My Assign:        My Path
  95.  
  96.     Note that all trailing spaces are ignored.  That is, if
  97.     you accidentally type extra spaces at the end of your
  98.     volume or path name, they are ignored.
  99.  
  100.     - lets you specify the names directory using the command line option
  101.     DIR <namesdir> or the environment variable "BindNamesDirectory".
  102.     So your user-startup file might contain:
  103.  
  104.             BindNames DIR s:Names
  105.  
  106.             or
  107.  
  108.             SetEnv BindNamesDirectory MyDisk:BindDir
  109.             BindNames
  110.  
  111.     If the variable "BindNamesDirectory" is not set and the DIR option is
  112.     not used, BindNames looks in SYS:Names as usual.
  113.  
  114.     The NOADD switch, causes BindNames V3.71 to assign only the last
  115. found path for a assign like BindNames V1.0.
  116.  
  117.     Using BindNames, I've managed to get every single "Assign"
  118. command out of my Startup-Sequence.  And if I need to add a series of
  119. assignments for a new program, I can just create a SYS:Names file for
  120. that program.  That makes installing the program much easier, and also
  121. keeps all the logical names for a particular program in an obvious
  122. location, which makes modifying the system setup much simpler in the
  123. future. 
  124.  
  125.     BindNames is public domain, do with as you please.
  126.  
  127.  
  128.                     -Dave Haynie
  129.                      3/14/89
  130.  
  131.  
  132.     I have not done very much with BindNames to update it to use
  133. features of the more recent versions of AmigaDOS; for example, "Assign ADD".
  134. But it works with every version of AmigaDOS from 1.3 on up.
  135.  
  136.                     -Dan Barrett
  137.                     6/1/94
  138.                     Thanks, Dave!!!
  139.  
  140.  
  141.     The only thing I missed in Bindnames was "Assign ADD". So I decide to
  142. implement it. First I had to understand how BindNames work. As my first
  143. experience in programming lists, it was not so easy to understand :-)
  144. But it seems it works now.
  145. I include my names-files and a log file which shows how BindNames worked
  146. with these files. The ExampleA.log shows the resulting assigns.
  147. With NOADD option it works already with AmigaDOS 1.3.
  148. Without NOADD it needs at minimum 2.04.
  149.  
  150.  
  151. Changes for 3.71:
  152. -----------------
  153. Sorry! Little bug in printing unresolved assigns. BindNames prints the whole
  154. RESOLVED!! list again,    fixed!
  155.  
  156. Improved resolving
  157.  
  158. NEW FEATURE: AUTOMOUNT
  159. For unresolved volumes BindNames tries to mount it. If failed => unresolved.
  160. It's useful for users, which uses a resident RAM: Disk. The startup-sequence
  161. looks like following:
  162.  
  163.     ;startup-piece
  164.     ...
  165.     assign RAM: dismount
  166.     c:BindNames
  167.  
  168. The older versions of BindNames couldn't resolve 'T:  RAM:t', etc.
  169. From now on BindNames tries a 'mount RAM:' after doing all other assigns,
  170. so DOSDRIVERS:, etc. are already assigned, when mounting.
  171.  
  172. NEW FEATURE: COMMENTS
  173. If first character in a line in names-file is a ';' the whole line is ignored.
  174. Could be used for temporary not used assigns, like:
  175.  
  176.     ;HistoryLine:  dh0:games
  177.  
  178.                     -Jan Rembser
  179.                     18.8.94
  180.                     Thanks, Dave and Dan!
  181.